mudbox::Picker Class Reference

#include <mesh.h>

Inheritance diagram for mudbox::Picker:

Inheritance graph
[legend]
List of all members.

Detailed Description

Picker objects are used as part of the map extraction process, to find points on one mesh that most closely correspond to points on another. This is used for creating displacement maps, normal maps, color maps, etc.

If you need to control the algorithm by which points are picked from a vector, you can override this class in a plug-in, and replace Mudbox's version, which is in the plugin called "BTreePicker". To create your own:

1. Write a plug-in that defines your own class derived from Picker.

2. Delete the existing BTreePicker plugin, and copy yours into the plug-in folder.

On OSX, this plugin is found in the Mudbox 2010 package, under Contents>MacOS>plugins. On the PC, it is found in the work dir folder, under "plugins"


Public Member Functions

virtual const mudbox::ClassDesc RuntimeClass (void) const
virtual void  SetMesh (Mesh *m_pMesh)
virtual bool  Pick (const Vector &vLocalStart, const Vector &vLocalEnd, bool bBothSides, SurfacePoint &cResult, float fTarget=0.5f)

Static Public Member Functions

const mudbox::ClassDesc StaticClass (void)
mudbox::Node CreateInstances (unsigned int iCount=1)

Member Function Documentation

virtual const mudbox::ClassDesc* mudbox::Picker::RuntimeClass void   )  const [inline, virtual]
 

Reimplemented from mudbox::TreeNode.

00789 :
    virtual void SetMesh(
const mudbox::ClassDesc* mudbox::Picker::StaticClass void   )  [static]
 

Reimplemented from mudbox::TreeNode.

mudbox::Node* mudbox::Picker::CreateInstances unsigned int  iCount = 1  )  [static]
 

Reimplemented from mudbox::TreeNode.

virtual void mudbox::Picker::SetMesh Mesh m_pMesh  )  [virtual]
 
Parameters:
m_pMesh  [in] Specify the mesh from which SurfacePoints can be picked
virtual bool mudbox::Picker::Pick const Vector vLocalStart,
const Vector vLocalEnd,
bool  bBothSides,
SurfacePoint cResult,
float  fTarget = 0.5f
[virtual]
 
Parameters:
vLocalStart  [in] Start point of the picking vector, in object space
vLocalEnd  [in] End point of the picking vector, in object space
bBothSides  [in] If true, allow the mesh to be picked from either side (front or back of faces)
cResult  [out] The calculated SurfacePoint
fTarget  [in] This value, ranging from 0 to 1, represents a position on the line between vLocalStart and vLocalEnd. If there are multiple selection points, the one closes to this value is returned.

mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker
mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker mudbox::Picker